package com.daidai.service;

import com.daidai.model.Association;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * Author: Mr.Chen
 * Date: 2022/08/01 16:15
 * Description:
 */
public interface AssociationService {
    int findOwnerIdByAssociationId(@Param("associationId") int associationId);

    Association findAssociationById(@Param("associationId") int associationId);

    Association findAssByUserId(@Param("userId") int userId);

    String findSignatureActivityName(@Param("associationId") int associationId);

    List<Association> findAllAssociations();

    List<Association> findAssociationsByType(@Param("type") int type);

    String findAssociationNameByAssociationId(@Param("associationId") int associationId);

    List<Association> findAllAss();

    List<Association> findAllAssociationsApply();

    void addAssociation(@Param("description") String description,
                        @Param("name") String name,
                        @Param("createTime") String createTime,
                        @Param("type") int type,
                        @Param("ownerId") int ownerId,
                        @Param("logo") String logo);

    void addAss(@Param("description") String description,
                @Param("name") String name,
                @Param("createTime") String createTime,
                @Param("type") int type,
                @Param("ownerId") int ownerId,
                @Param("logo") String logo);

    void deleteAss(@Param("associationId") int associationId);

    void applyPass(@Param("createTime") String createTime, @Param("associationId") int associationId);

    void applyRefuse(@Param("associationId") int associationId);

    void assModify(@Param("description") String description,
                   @Param("name") String name,
                   @Param("type") int type,
                   @Param("ownerId") int ownerId,
                   @Param("logo") String logo,
                   @Param("signatureActivity") Integer signatureActivity,
                   @Param("associationId") int associationId);
}
